package com.cn.xiaonuo.tcrfinance.tcrgnete.service;

import com.cn.xiaonuo.common.entity.BusinessMessage;
import com.cn.xiaonuo.tcrfinance.tcrgnete.param.*;

import javax.servlet.http.HttpServletResponse;

/**
 * @BelongsProject: slb-reports-java
 * @Author: likui
 * @CreateTime: 2022-11-03  15:18
 * @Description: TODO
 */
public interface GnetePayService {

    /**
     * 现金资产管理--资产信息
     * @return
     */
    BusinessMessage accountBalance(String PSno);


    /**
     * 结算账户提现
     * @param param
     * @return
     */
    BusinessMessage withdrawal(WithdrawalParam param);

    /**
     * 短信验证码发送
     * @param phone
     * @return
     */
    BusinessMessage verificationCode(String phone);

    /**
     * 资产信息
     * @return
     */
    BusinessMessage fundInformation(FundInformationParam param);

    /**
     * 资金流水记录
     * @param param
     * @return
     */
    BusinessMessage capitalFlow(CapitalFlowParam param);

    /**
     * 提现记录
     * @param param
     * @return
     */
    BusinessMessage withdrawalRecord(CapitalFlowParam param);

    /**
     * 同步提现状态定时
     * @return
     */
    BusinessMessage timingUpdate() throws Exception;

    /**
     * 提现记录--导出
     * @param response
     * @param param
     * @return
     */
    BusinessMessage withdrawalRecordExcel(HttpServletResponse response, CapitalFlowParam param);

    /**
     * 查询商户三方余额
     * @param param
     * @return
     */
    BusinessMessage queryThirdBalance(ThirdBalanceParam param);
}
